Backplane fabrics in communications equipment are often constructed of specialized packet switching networks that move data between end nodes of the fabric within a communication protocol agreed upon by the end nodes. A fabric should be capable of transporting a variety of upper layer protocols (“ULPs”) between the end nodes. One technique for supporting and transporting such variety of ULPs across a single fabric is encapsulation and extraction at the end nodes.
Encapsulation enables an ingress end node to receive a data packet from an external medium, encapsulate the data packet within a fabric protocol, and transport the encapsulated data packet to an egress end node of the fabric. To be flexible, the fabric should provide a number of fabric services capable of supporting a wide variety of ULPs (e.g., IP, TCP/IP, UDP, etc). To do so, the fabric may append a fabric header (and optionally a fabric footer) to provide switching and/or routing functionality including Class of Service (“CoS”), Quality of Service (“QoS”), prioritization, reordering, data integrity, error reporting, congestion management, flow control, reliable delivery, fabric management, and the like. The egress end node subsequently strips off these headers and footers to extract the data packet before the data packet is delivered to a receiving external medium.
However, implementing a switching fabric capable of supporting such diverse ULPs via encapsulation and extraction may incur substantial overhead as a result of the appended headers and footers. When large data packets are delivered across a switch fabric, the overhead may be negligibly small. However, when streams of small packets are transported across a switch fabric, the overhead can become substantial. In fact, in some cases the bandwidth consumed by overhead can rival or even exceed that consumed to transport the actual data. Example ULPs where streams of small packets are common include, Internet Protocol (“IP”), ATM AAL-0 (Asynchronous Transfer Mode ATM Adaptation Layer-0), and voice control channels.